(转)牛牛牌型判定(五小牛 > 五花牛 > 炸弹 > 银牛 > 牛牛 > 有牛>没牛) 您所在的位置:网站首页 牛牛是按照牌面数字比较大小的吗 (转)牛牛牌型判定(五小牛 > 五花牛 > 炸弹 > 银牛 > 牛牛 > 有牛>没牛)

(转)牛牛牌型判定(五小牛 > 五花牛 > 炸弹 > 银牛 > 牛牛 > 有牛>没牛)

2024-05-19 19:53| 来源: 网络整理| 查看: 265

牌型大小:

五小牛 > 五花牛 > 炸弹 > 银牛 > 牛牛 > 有牛(牛987654321) > 没牛,K > Q > J ……2 > A, 黑桃♠️ > 红桃♥️ > 梅花♣️ > 方块♦️,同样的牌型比大小,同样的手牌比花色.

1 /** 2 * 在cocoscreator里导入为插件使用 3 * 插件不支持es6,注意需要按照es5规则写 4 */ 5 "use strict"; 6 7 /** 8 * 定义手牌类型(按照大小从小到大排序) 9 * @type {{TYPE_NONE: number, TYPE_NIU_1: number, TYPE_NIU_2: number, 10 * TYPE_NIU_3: number, TYPE_NIU_4: number, TYPE_NIU_5: number, 11 * TYPE_NIU_6: number, TYPE_NIU_7: number, TYPE_NIU_8: number, 12 * TYPE_NIU_9: number, TYPE_NIUNIU: number, TYPE_SILVER: number, 13 * TYPE_BOOM: number, TYPE_FLOWER: number, TYPE_FIVES: number}} 14 */ 15 var HandsType = { 16 TYPE_NONE: 0, // 没牛, 任意三张牌的和都不是10的倍数 17 TYPE_NIU_1: 1, // 牛1 18 TYPE_NIU_2: 2, 19 TYPE_NIU_3: 3, 20 TYPE_NIU_4: 4, 21 TYPE_NIU_5: 5, 22 TYPE_NIU_6: 6, 23 TYPE_NIU_7: 7, 24 TYPE_NIU_8: 8, 25 TYPE_NIU_9: 9, 26 TYPE_NIUNIU: 10, // 牛牛, 任意3张和为10的倍数,剩余2张和也为10的倍数 27 TYPE_SILVER: 11, // 银牛, 五张全是10、J、Q、K 28 TYPE_BOOM: 12, // 炸弹, 四张点数相同 29 TYPE_FLOWER: 13, // 5花牛, 五张全是J、Q、K 30 TYPE_FIVES: 14 // 5小牛(5张加起来小于等于10) 31 }; 32 33 /** 34 * 35 * @param p{Number} 1-13 (A-K) 36 * @param s{Number} 1-4 (1方块diamond、2梅花club、3红桃heart、4黑桃spade) 37 * @constructor 38 */ 39 function CardObj(p, s) { 40 this.point = p; // 牌面点数 41 42 this.suit = s; // 牌面花色 43 } 44 45 /** 46 * 手牌类型返回对象 47 * @param type{Number} 手牌类型 48 * @param mCard{CardObj} 手里的最大牌 49 * @param ncards{Array} 组成牛的三张牌, 手牌分成两组方便展示 50 * @param pcards{Array} 决定点数的两张牌 51 * @constructor 52 */ 53 function TypeReturn(type, mCard, ncards, pcards) { 54 this.handsType = type; // 手牌类型 55 56 this.maxCard = mCard; // 最大牌 57 58 this.nCards = ncards; // 组成牛的牌 59 60 this.pCards = pcards; // 决定点数的牌 61 } 62 63 /** 64 * 创建一副牌,牌面A-K 65 * 默认已经洗牌 66 * @return {Array} 67 */ 68 function create1pairPoker(isShuffle) { 69 var cards = []; 70 71 for (var i = 1; i 5) return new TypeReturn(HandsType.TYPE_NONE, cardsArr[0], cardsArr, []); 120 sortBig2Samll(cardsArr); 121 var totalPoint = 0; 122 var realTotalPoint = 0; 123 var bigJ = true; 124 var big10 = true; 125 126 cardsArr.forEach((card)=>{ 127 totalPoint += card.point


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有